#ifndef __INF_WTN6170_H__
#define __INF_WTN6170_H__

#include "driver/gpio.h"
#include "sys/unistd.h"
#include "esp_task.h"


///// 语音方法
#define sayWithoutInt() Inf_WTN6170_Play(0xf3)
#define sayNum(x) Inf_WTN6170_Play(x + 1)
#define sayWaterDrop() Inf_WTN6170_Play(11)
#define sayBuzzer() Inf_WTN6170_Play(12)
#define sayAlarm() Inf_WTN6170_Play(13)
#define sayDoorBell() Inf_WTN6170_Play(14)
#define sayFail() Inf_WTN6170_Play(16)
#define sayPassword() Inf_WTN6170_Play(19)
#define sayDoorOpen() Inf_WTN6170_Play(25)
#define sayDoorClose() Inf_WTN6170_Play(26)
#define sayIllegalOperation() Inf_WTN6170_Play(28)
#define sayVerify() Inf_WTN6170_Play(31)
#define sayFinish() Inf_WTN6170_Play(33)
#define sayPressSharp() Inf_WTN6170_Play(34)
#define sayDelSucc() Inf_WTN6170_Play(36)
#define sayDelFail() Inf_WTN6170_Play(37)
#define sayDelAll() Inf_WTN6170_Play(39)
#define sayVerifySucc() Inf_WTN6170_Play(41)
#define sayVerifyFail() Inf_WTN6170_Play(42)
#define saySetSucc() Inf_WTN6170_Play(43)
#define saySetFail() Inf_WTN6170_Play(44)
#define sayOperateSucc() Inf_WTN6170_Play(46)
#define sayOperateFail() Inf_WTN6170_Play(47)
#define sayInvalid() Inf_WTN6170_Play(48)
#define sayAddSucc() Inf_WTN6170_Play(49)
#define sayAddFail() Inf_WTN6170_Play(50)
#define sayAddUser() Inf_WTN6170_Play(51)
#define sayDelUser() Inf_WTN6170_Play(52)
#define sayUserFull() Inf_WTN6170_Play(53)
#define sayAddAdmin() Inf_WTN6170_Play(54)
#define sayDelAdmin() Inf_WTN6170_Play(55)
#define sayAdminFull() Inf_WTN6170_Play(56)
#define sayRetry() Inf_WTN6170_Play(58)
#define sayInputUserPassword() Inf_WTN6170_Play(64)
#define sayInputUserPasswordAgain() Inf_WTN6170_Play(65)
#define sayPasswordAddSucc() Inf_WTN6170_Play(66)
#define sayPasswordAddFail() Inf_WTN6170_Play(67)
#define sayPasswordVerifySucc() Inf_WTN6170_Play(68)
#define sayPasswordVerifyFail() Inf_WTN6170_Play(69)
#define sayInputAdminPassword() Inf_WTN6170_Play(70)
#define sayInputAdminPasswordAgain() Inf_WTN6170_Play(71)
#define sayAddUserFingerprint() Inf_WTN6170_Play(76)
#define sayDelUserFingerprint() Inf_WTN6170_Play(77)
#define sayPlaceFinger() Inf_WTN6170_Play(80)
#define sayPlaceFingerAgain() Inf_WTN6170_Play(81)
#define sayTakeAwayFinger() Inf_WTN6170_Play(82)
#define sayFingerprintAddSucc() Inf_WTN6170_Play(83)
#define sayFingerprintAddFail() Inf_WTN6170_Play(84)
#define sayFingerprintVerifySucc() Inf_WTN6170_Play(85)
#define sayFingerprintVerifyFail() Inf_WTN6170_Play(86)


//// 用户总数判断
// 重复密码
#define user_Repeat_PWD() Inf_WTN6170_Play(72)

// 初始化语音
void Inf_WTN6170_Init(void);

/**
 * @brief 播放语音
 * 
 * @param cmd 命令
 */
void Inf_WTN6170_Play(uint8_t cmd);

#endif /* __INF_WTN6170_H__ */ 
